home *** CD-ROM | disk | FTP | other *** search
- package java.io;
-
- class ObjectInputStream$PeekInputStream extends InputStream {
- // $FF: renamed from: in java.io.InputStream
- private final InputStream field_0;
- private int peekb = -1;
-
- ObjectInputStream$PeekInputStream(InputStream var1) {
- this.field_0 = var1;
- }
-
- int peek() throws IOException {
- return this.peekb >= 0 ? this.peekb : (this.peekb = this.field_0.read());
- }
-
- public int read() throws IOException {
- if (this.peekb >= 0) {
- int var1 = this.peekb;
- this.peekb = -1;
- return var1;
- } else {
- return this.field_0.read();
- }
- }
-
- public int read(byte[] var1, int var2, int var3) throws IOException {
- if (var3 == 0) {
- return 0;
- } else if (this.peekb < 0) {
- return this.field_0.read(var1, var2, var3);
- } else {
- var1[var2++] = (byte)this.peekb;
- --var3;
- this.peekb = -1;
- int var4 = this.field_0.read(var1, var2, var3);
- return var4 >= 0 ? var4 + 1 : 1;
- }
- }
-
- void readFully(byte[] var1, int var2, int var3) throws IOException {
- int var5;
- for(int var4 = 0; var4 < var3; var4 += var5) {
- var5 = this.read(var1, var2 + var4, var3 - var4);
- if (var5 < 0) {
- throw new EOFException();
- }
- }
-
- }
-
- public long skip(long var1) throws IOException {
- if (var1 <= 0L) {
- return 0L;
- } else {
- int var3 = 0;
- if (this.peekb >= 0) {
- this.peekb = -1;
- ++var3;
- --var1;
- }
-
- return (long)var3 + this.skip(var1);
- }
- }
-
- public int available() throws IOException {
- return this.field_0.available() + (this.peekb >= 0 ? 1 : 0);
- }
-
- public void close() throws IOException {
- this.field_0.close();
- }
- }
-